@import url('reset.css');

html {
	height: 100%
}


body {
	font-family: "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	font-size: 18px;
	line-height: 24px;
	font-weight: 400;
	color: #333;
}

h1 {
	font-size: 36px;
	line-height: 40px;
	text-align: center;
	font-weight: bold;
	margin-bottom: 30px;
}

h2 {
	font-weight: bold;
	font-size: 24px;
	line-height: 28px;
	margin-bottom: 10px;
}

a {
	color: #666666;
	text-decoration: none;
}

header .logo {
	margin: 20px 0;
}
header .logo img {
	max-height: 80px;
}
header .logo-xs img {
	max-width: 280px;
	max-height: 80px;
	margin: 10px auto;
}
header #logo-right {
	text-align: right;
}

#table-header {
    width: 100%;
}

#logo-left-xs {
    max-width: 50%;
    min-width: 50%;
    vertical-align: baseline;
    padding:3%;
    padding-left: 10%;
}
#td-logo-left-xs {
    vertical-align: middle;
    text-align: left;
}
#logo-right-xs {
    max-width: 50%;
    min-width: 50%;
    padding:3%;
    padding-right: 10%;
}
#td-logo-right-xs {
    vertical-align: middle;
    text-align: right;
}

header #header-decoration {
	background-color: #53C4EF;
	height: 35px;
}
header #lift__noticesContainer__ {
	display: none;
}

nav {
	margin-bottom: 0 !important;
}
.navbar {
	border-radius: 0;
}
.navbar-default {
	background-color: #53C4EF;
	border: none;
}
.navbar-default .navbar-nav > li > a:link, .navbar-default .navbar-nav > li > a:visited {
	color: white;
}
.navbar-default .navbar-nav > li > a:focus, .navbar-default .navbar-nav > li > a:hover {
	color: #eee;
}
.navbar-default .navbar-nav > li.active > a, .navbar-default .navbar-nav > li.active > a:focus, .navbar-default .navbar-nav > li.active > a:hover, .navbar-default .navbar-nav > li.active > a:visited {
	color: #555;
	background-color: white;
	border: none;
}
.navbar-default .navbar-toggle {
	border-color: white;
}
.navbar-default .navbar-toggle .icon-bar {
	background-color: white;
}
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
    background-color: #33a4cf;
}
.navbar-btn a {
	margin-left: 15px;
	text-transform: uppercase;
}
.navbar-btn .login {
	margin-right: 25px;
}
.navbar-btn .logout {
	margin-right: 20px;
}
.navbar-btn .logout #username {
	font-size: 12px;
}

#for-banks {
	padding: 50px 0;
	text-align: center;
	background-color: #f1f4f8;
}
#for-banks h1 {
	font-size: 36px;
	margin-bottom: 10px;
}
#for-banks a {
	font-size: 24px;
}



footer {
	padding: 50px 10px;
	color: #999999;
	background-color: #3C3C3C;
	text-align: center;
	line-height: 20px;
}
footer a, footer a:hover {
	color: white;
}

footer #copyright {
	margin-bottom: 10px;
}



#main-about {
	padding-top: 50px;
	background-size: cover;
	background-repeat: no-repeat;
	font-size: 17px;
}

@media only screen and (min-width: 500px) and (max-width: 550px) {
.container {max-width: 500px;}
  #main-about {
    background-repeat:repeat-y;
    background-size:500px;
   }
}
@media only screen and (min-width: 450px) and (max-width: 500px) {
.container {max-width: 450px;}
  #main-about {
    background-repeat:repeat-y;
    background-size:450px;
   }
}
@media only screen and (min-width: 400px) and (max-width: 450px) {
.container {max-width: 400px;}
  #main-about {
    background-repeat:repeat-y;
    background-size:400px;
   }
}
@media only screen and (min-width: 350px) and (max-width: 400px) {
  .container {max-width: 350px;}
  #main-about {
    background-repeat:repeat-y;
    background-size:350px;
  }
}
@media only screen and (max-width: 350px) {
  .container {max-width: 300px;}
  #main-about {
    background-repeat:repeat-y;
    background-size: 300px;
  }
}

#main-about h1 {
	color: white;
}
#main-about h2 {
	padding: 20px 10px 2px 10px;
	color: white;
	margin: 20px 10px 20px 20px;
	font-size: 40px;
	line-height: 42px;
	font-weight: normal;
	text-align: left;
}
#main-about p {
	padding: 10px 10px 10px 30px;
	color: white;
	text-align: left;
}
#main-about #main-about-box {
	background-color: rgba(83, 196, 239, 0.7);
	margin-top: 240px;
	padding-bottom: 40px;
}
#main-about #main-about-text a {
	text-decoration: underline;
	color: white;
}
#main-about #main-about-buttons {
	margin: 20px 0 0 30px;
}
#main-about #main-about-buttons a {
	margin-bottom: 10px;
}



#main-get-started {
	padding: 50px 10px;
	background-color: #f1f4f8;
}
#main-get-started h2 {
	font-weight: bold;
	font-size: 24px;
	margin-bottom: 10px;
}
#main-get-started .main-get-started-icon, #main-get-started .main-get-started-item {
	text-align: center;
}
#main-get-started .main-get-started-item {
	margin-bottom: -6px;
}
#main-get-started .main-get-started-text {
	padding: 20px 30px;
	text-align: left;
}



#main-apis {
	padding-top: 50px;
}
#main-apis h2 {
	font-weight: bold;
	font-size: 24px;
	margin-top: 13px;
}
#main-apis .main-apis-text {
	margin-bottom: 50px;
}



#main-showcases {
	margin-top: 70px;
	padding: 50px 10px;
	color: white;
	background-color: #53C4EF;
	text-align: center;
}
.main-showcases-item {
	display: inline-block;
	margin: 30px 10px;
	width: 230px;
	font-size: small;
}
.main-showcases-item a {
	color: white;
}
.main-showcases-item a:hover {
	text-decoration: underline;
}



#main-faq {
	text-align: left;
	padding: 50px 0;
	background-color: #f1f4f8;
}
#main-faq h2 {
	font-size: 18px;
	margin-left: 30px;
}
#main-faq p, #main-faq ol {
	margin-top: 10px;
}
#main-faq .main-faq-button {
	margin: 10px;
	background-image: url('https://static.openbankproject.com/images/sandbox/faq/minus.png');
	background-repeat:no-repeat;
}
#main-faq .main-faq-button.collapsed {
	background-image: url('https://static.openbankproject.com/images/sandbox/faq/plus.png');
}
#main-faq .main-faq-button:hover {
	cursor: pointer;
}
#main-faq ol {
	list-style-type: decimal;
	margin-left: 20px;
}



#main-start_building {
	padding: 50px 0;
}



#main-partners {
	padding-bottom: 50px;
	text-align: center;
}
#main-partners img {
	width: 160px;
}
#main-partners a {
	margin:auto;
	display: inline-block;
	padding: 30px 30px 30px 30px;
}



#main-support {
	padding: 60px 10px;
	color: white;
	background-color: #53C4EF;
	text-align: center;
}
#main-support h2 {
	font-size: 24px;
}
.main-support-item {
	display: inline-block;
	margin: 30px 10px;
}
.main-support-item a {
	color: white;
}



#vendor-support {
	padding: 60px 10px;
	color: white;
	background-color: #53C4EF;
	text-align: center;
}
#vendor-support h2 {
	font-size: 24px;
}
.vendor-support-item {
	display: inline-block;
	margin: 30px 10px;
}
.vendor-support-item a {
	color: white;
}





.bigbutton {
	margin: 30px auto;
	text-align: center;
}
.bigbutton a {
	border: 3px solid green;
	border-radius: 25px;
	color: green;
	padding: 10px;
	font-size: 24px;
	text-decoration: none;
}
.bigbutton a:hover {
	background-color: green;
	color: white;;
}



#authorise,
#recover-password,
#signup,
#create-account,
#register-consumer {
	background-color: #53C4EF;
	padding: 20px 10px;
	color: white;
	margin: 30px auto;
}
#authorise #login-special-instructions {
	text-align: center;
	margin-bottom: 20px;
}
#authorise form,
#authorise #oauth-done-thanks,
#recover-password form,
#recover-password #recover-password-explanation,
#signup form {
	max-width: 400px;
	margin: 0 auto;
}
#authorise .authorise-button {
	margin-bottom: 10px;
}
#authorise #authorise-submit {
	text-align: right;
}
.authorise-button-oidc {
	text-align: right;
	margin-bottom: 10px;
	margin-top: 10px;
}
#authorise #authorise-submit input,
#recover-password #recover-password-submit input,
#signup #signup-submit input {
	/* Copy of bootstrap .btn */
	display: inline-block;
	padding: 6px 12px;
	margin-bottom: 0;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.42857143;
	white-space: nowrap;
	vertical-align: middle;
	touch-action: manipulation;
	cursor: pointer;
	background-image: none;
	border: 1px solid transparent;
	border-radius: 4px;
	border-color: #ccc;
	color: #333;
	background-color: white;
	text-transform: uppercase;
}
#authorise #authorise-submit input:hover,
#recover-password #recover-password-submit input:hover,
#signup #signup-submit input:hover {
	background-color: #e6e6e6;
}
#authorise #authorise-signup {
	text-transform: uppercase;
}
#authorise #authorise-recover-password {
	font-size: 12px;
	color: white;
}
#authorise .login-error {
	margin-bottom: 10px;
	color: red;
}



#recover-password #recover-password-email input,
#signup input[type="text"],
#signup input[type="password"]
{
	/* Copy of bootstrap .form-control */
	display: block;
	width: 100%;
	height: 34px;
	padding: 6px 12px;
	font-size: 14px;
	line-height: 1.42857143;
	color: #555;
	background-color: #fff;
	background-image: none;
	border: 1px solid #ccc;
	border-radius: 4px;
	transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
}
#recover-password #recover-password-email input:focus,
#signup input[type="text"]:focus,
#signup input[type="password"]:focus {
	border-color: #66afe9;
	outline: 0;
	box-shadow: inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);
}
#recover-password h1 + div {
	text-align: center;
}
#recover-password .form-group {
	margin-top: 20px;
}



#signup #signup-error,
#signup .form-group,
#signup #signup-agree-terms,
#signup #signup-agree-privacy-policy,
#signup #signup-submit {
	margin-bottom: 20px;
	text-align: justify;
}



#create-account a,
#signup #signup-agree-terms a,
#signup #signup-agree-privacy-policy a,
#register-consumer a,
#authorise #manual-redirect a {
	color: white;
	text-decoration: underline;
}
#create-account #create-account-explanation,
#create-account form,
#register-consumer #register-consumer-explanation,
#register-consumer form,
#register-consumer-errors,
#register-consumer-success {
	max-width: 600px;
	margin: 0 auto;
}
#create-account #create-account-explanation,
#register-consumer #register-consumer-explanation {
	margin-bottom: 20px;
}
#create-account #create-account-id span,
#create-account #create-account-bank-id span,
#create-account #create-account-initial-balance span,
#create-account #create-account-currency span {
	font-weight: bold;
}



#register-consumer #appDesc {
	height: 250px;
}
#register-consumer #register-consumer-errors {
	margin-bottom: 20px;
}
#register-consumer #register-consumer-success {
	margin-top: 30px;
}
#register-consumer #register-consumer-success p {
	margin-bottom: 20px;
}
#register-consumer #register-consumer-success .row {
	margin-bottom: 20px;
}
#register-consumer #register-consumer-success .row div:nth-child(1) {
	font-weight: bold;
}



/* from oauth/authorize.html */
#verifier {
	margin-top: 30px;
	font-weight: bold;
	font-size: 18px;
	text-align: center;
}

/* wrap text, break at any position, no matter where it it word ending*/
.wrap-text {
	word-break: break-all;
	overflow-wrap: break-word;
}
